package com.settlement.system.model.entity.common;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.HeadFontStyle;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.alibaba.excel.annotation.write.style.HeadStyle;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.settlement.system.converter.WpOxoRefundDetailConvert;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
 * 退款稽核-唯品会OXO退款明细
 * @author Ximi
 * @since 2020-06-15
 */
@Data
@ExcelIgnoreUnannotated
@HeadStyle(fillBackgroundColor = 9,fillForegroundColor = 9)
@HeadRowHeight(value = 20)
@HeadFontStyle(fontHeightInPoints = 14)
public class TblWpOxoRefundDetail extends BaseModel implements Serializable {


    /**
     * 订单号
     */
    @ExcelProperty(index = 0,value = "订单号",converter = WpOxoRefundDetailConvert.class)
    @ApiModelProperty(value = "订单号")
    private String orderNo;

    /**
     * 订单状态
     */
    @ExcelProperty(index = 1,value = "订单状态")
    @ApiModelProperty(value = "订单状态")
    private String orderStatus;

    /**
     * 客退申请单号
     */
    @ExcelProperty(index = 2,value = "客退申请单号")
    @ApiModelProperty(value = "客退申请单号")
    private String applyNo;

    /**
     * 客退申请单状态
     */
    @ExcelProperty(index = 3,value = "客退申请单状态")
    @ApiModelProperty(value = "客退申请单状态")
    private String applyStatus;

    /**
     * 退款类型
     */
    @ExcelProperty(index = 4,value = "退款类型")
    @ApiModelProperty(value = "退款类型")
    private String backAmountType;

    /**
     * 下单时间
     */
    @ExcelProperty(index = 5,value = "下单时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "下单时间")
    private Date orderTime;

    /**
     * 订单变更时间
     */
    @ExcelProperty(index = 6,value = "订单变更时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "订单变更时间")
    private Date orderExchangeTime;

    /**
     * 供应商
     */
    @ExcelProperty(index = 7,value = "供应商")
    @ApiModelProperty(value = "供应商")
    private String supplier;

    /**
     * 回寄运单号
     */
    @ExcelProperty(index = 13,value = "回寄运单号")
    @ApiModelProperty(value = "回寄运单号")
    private String returnTransportNo;

    /**
     * 导出时间
     */
    @ExcelProperty(index = 18,value = "导出时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "导出时间")
    private Date exportTime;

    /**
     * 数量
     */
    @ExcelProperty(index = 27,value = "数量")
    @ApiModelProperty(value = "数量")
    private Integer qty;

    /**
     * SKU
     */
    @ExcelProperty(index =30,value = "SKU")
    @ApiModelProperty(value = "SKU")
    private String skuNo;

    /**
     * 单价
     */
    @ExcelProperty(index =31,value = "单价")
    @ApiModelProperty(value = "单价")
    private BigDecimal unitPrice;


    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public String getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(String orderStatus) {
        this.orderStatus = orderStatus;
    }

    public String getApplyNo() {
        return applyNo;
    }

    public void setApplyNo(String applyNo) {
        this.applyNo = applyNo;
    }

    public String getApplyStatus() {
        return applyStatus;
    }

    public void setApplyStatus(String applyStatus) {
        this.applyStatus = applyStatus;
    }

    public String getBackAmountType() {
        return backAmountType;
    }

    public void setBackAmountType(String backAmountType) {
        this.backAmountType = backAmountType;
    }

    public Date getOrderTime() {
        return orderTime;
    }

    public void setOrderTime(Date orderTime) {
        this.orderTime = orderTime;
    }

    public Date getOrderExchangeTime() {
        return orderExchangeTime;
    }

    public void setOrderExchangeTime(Date orderExchangeTime) {
        this.orderExchangeTime = orderExchangeTime;
    }

    public String getSupplier() {
        return supplier;
    }

    public void setSupplier(String supplier) {
        this.supplier = supplier;
    }

    public String getReturnTransportNo() {
        return returnTransportNo;
    }

    public void setReturnTransportNo(String returnTransportNo) {
        this.returnTransportNo = returnTransportNo;
    }

    public Date getExportTime() {
        return exportTime;
    }

    public void setExportTime(Date exportTime) {
        this.exportTime = exportTime;
    }

    public Integer getQty() {
        return qty;
    }

    public void setQty(Integer qty) {
        this.qty = qty;
    }

    public String getSkuNo() {
        return skuNo;
    }

    public void setSkuNo(String skuNo) {
        this.skuNo = skuNo;
    }

    public BigDecimal getUnitPrice() {
        return unitPrice;
    }

    public void setUnitPrice(BigDecimal unitPrice) {
        this.unitPrice = unitPrice;
    }

}
